package com.um.springboot.starter.annotation;

import org.springframework.boot.autoconfigure.condition.ConditionalOnExpression;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * 只在特定实例上生效，避免并发
 * 特定实例条件表达式通过 ${hsh.config.specific-instance-expression} 参数来配置
 * 参数空值时对所有实例生效
 *
 * @author 甘天伟
 * @date 2025/3/28
 * 版权所有 广州优匠科技有限公司
 */
@Target({ElementType.METHOD, ElementType.TYPE})
@Retention(RetentionPolicy.RUNTIME)
@ConditionalOnExpression("${hsh.config.specific-instance-expression:true}")
public @interface ConditionalOnSpecificInstance {
}
